microcontroller programming microcontroller mandriva design prototype fedora pcb layout unix circuit pcb pcb design debian pcb assembly linux contract manufacturing open source windows electronics manufacturing